package com.css.common.core.session;

import lombok.Data;
import lombok.experimental.Accessors;

import java.util.HashMap;
import java.util.Map;
import java.util.Objects;

@Data
@Accessors(chain =true)
public class Session {
    /**
     * zfjkp的session字段
     */
    //用户登录账号
    String yhdlzh;

    //企业税号
    String qysh;

    //企业名称
    String qymc;

    //管理账号标志
    String glzhbz;

    //用户登录身份代码 11自然人 21普通企业人员22企业管理员 31 后台管理员
    String yhdlsfdm;
    //企业id
    String qyid;
    //自然人id
    String zrrid;
    //自然人姓名
    String zrrxm;
    //自然人证件号码
    String zrrzjhm;
    //自然人手机号码
    String zrrsjhm;
    //申请状态，0:待审核；1:审核通过；2:审核不通过
    String sqzt;
    //是否管理员企业
    String sfgly;

    //企业认证类别
    String qyrzlbDm;


    String appid;//api服务调用传此字段

    String appkey;//api服务调用传此字段

    Integer xtqdDm;//系统渠道代码

    Map<String,Object> map;

    public Object getKey(String key){
        return map.isEmpty() ? null : map.get(key);
    }

    public void setKey(String key, Object o){
        if(Objects.isNull(map)){
            map = new HashMap<>();
        }
        map.put(key,o);
    }

    public Session(){
        this.map = new HashMap<>();
    }

    /**
     * fxkp的session字段
     */

    //账户uuid
    String uuid;
    //用户名
    String yhm;
    //手机号
    String sjh;
    //姓名
    String xm;
    //用户密码设置标志 Y已设置N未设置
    String yhmmszbz;
    //实名认证标志 Y是N否
    String smrzbz;
    //自然人uuid
    String zrruuid;
    //身份证件号码
    String sfzjhm;
    //用户类型 01自然人端、02企业端
    String userType;
    /*//管理账号标志
    String glzhbz;*/
    //自然人地址
    String dz;
    //企业uuid
    String qyuuid;
    /*//企业名称
    String qymc;*/
    //统一社会信用代码
    String tyshxydm;
    /*//申请状态，0:待审核；1:审核通过；2:审核不通过
    String sqzt;
    //是否管理员
    String sfgly;*/
    //账户类别(00:超级管理员，01:总部账户,02:省级账户)
    String zhlb;


    public Session clear(){
        this.yhdlzh = "";
        this.qysh = "";
        this.glzhbz = "";
        this.qyid = "";
        this.zrrid = "";
        this.zrrxm = "";
        this.zrrzjhm = "";
        this.zrrsjhm = "";
        this.yhdlsfdm = "";
        this.appid = "";
        this.appkey="";
        this.xtqdDm=null;
        this.zrruuid = "";
        this.userType = "";
        this.uuid = "";
        this.yhm = "";
        this.sjh = "";
        this.xm = "";
        this.yhmmszbz = "";
        this.smrzbz = "";
        this.sfzjhm = "";
        this.dz = "";
        this.qymc = "";
        this.qyuuid = "";
        this.tyshxydm = "";
        this.sqzt = "";
        this.sfgly = "";
        this.qyrzlbDm = "";
        this.zhlb = "";
        return this;
    }

}
